home *** CD-ROM | disk | FTP | other *** search
- To: The Amiga public.
- From: Mike Rieser (riesermc@mentor.cc.purdue.edu)
-
- I would like to express my thanks and appreciation for the fine work
- Steve Kirkendall has done on the Elvis program. Any thanks for it's
- many working features should be expressed to him first.
-
- Thanks Steve!
-
- Sincerely,
- Mike Rieser
-
- Compiling The Amiga version of Elvis was done using Manx Aztec C 5.2b.
-
- For the port to AmigaDOS 2.04, I tried to use as many Native AmigaDOS
- calls as I could. This should increase Elvis's chances at being
- compiled with other compilers. DICE seems to have a different default
- char type. You may need to use the UCHAR() macro in tio.c.
-
- For the port to AmigaDOS 1.3, I tried to make sure the program was at
- least usable. Many features are missing, most notably running commands
- in subshells. Also, what I could get working, I used Aztec functions to
- support them, so this part is a little more compiler dependent.
-
- Aztec is compatible with the SAS libcall #pragma. I personally prefer
- using the includes that come from Commodore over the ones supplied with
- Aztec, but for people with a straight Aztec installation, I went with
- the default names for the Aztec pragmas.
-
- One include you'll need is <sys/types.h> its a common include when
- porting software just make yourself one. Its a two line file that saves
- a lot of hassle especially in the elvis source. So, make a directory
- where your includes are located called `sys' and in a file below that
- type:
- /* sys/types.h */
- #include <exec/types.h>
-
- When setting environment variables (either local or global) for
- variables that specify a directory, make sure the variable ends in `:'
- or `/'. This saved from having to change much of the way elvis works.
- The default if TEMP and TMP aren't specified is "T:". The default if
- HOME is not specified is "S:".
-
- Under AmigaDOS 2.04 I have been able to support all documented features
- of Elvis. Under AmigaDOS 1.3 Elvis works, but is missing some of the
- more sophisticated features.
-
- Under both version of AmigaDOS the following features are supported:
-
- Elvis is clean of Enforcer hits.
-
- Elvis supports Global environment variables.
-
- Elvis works as a line editor and can read script files when
- named ex. (Needs testing.)
-
- Elvis supports most vi .exrc definitions, put them in elvis.rc
- in either s: or your HOME directory
-
- Elvis READONLY works for -r--d files, and when Elvis is named
- view.
-
- Elvis uses an internal TERMCAP entry by default.
-
- Elvis supports user defined TERM and TERMCAP environment
- variables.
-
- Elvis supports window resizing.
-
- Elvis works over an AUX: port, and has an internal TERM vt100-80
- for this purpose.
-
- Elvis supports Function keys and Arrow keys.
-
- Elvis supports shifted Arrow Keys, and shifted Function keys
- too.
-
- Elvis can be told where to put its temp files via TMP or TEMP
- environment variables.
-
- Elvis can use any user defined shell. (csh, ksh, conman, etc)
-
- Elvis makes writes of no larger than 256 bytes to the
- console.device to prevent problems accompanying large writes.
-
- Elvis also turns off the cursor to speed output.
-
-
- Under AmigaDOS 2.04 the following features are supported:
-
- Elvis can be run. (ex. Run Elvis s:startup-sequence)
-
- Elvis supports filters via PIPE:. Elvis multitasks and runs
- programs Asynch.
-
- Elvis supports Local environment variables.
-
- Elvis supports tag lookup using an external tag program called ref.
-
- Elvis command line supports AmigaDOS regular expression and `*'
- wildcards via calls to MatchFirst, MatchNext.
-
- Elvis preserves file protection bits (eg s-rw--).
-
- Elvis will support 101 key keyboards.
-
- Elvis requires more than the standard 4000 byte stack. A stack of
- 10,000 bytes should be adequate.
-
- Elvis has two support programs that notice and recover files from its
- temporary files: elvprsv and elvrec. By default Elvis uses T: for its
- temporary file, but most people have T: assigned to RAM:T. Not very
- useful if the system reboots, since files in this area are not
- recoverable after a system crash. And if you assign this to a hard
- drive, you run the risk of corrupting your drive if the system resets
- during a write operation. Based on this, you may want to change the
- $TEMP variable to use a recoverable area such as RAD: or VD0:. There
- is no problem with using RAM:T other than you won't be able to recover
- changes to a file. Remember Elvis doesn't rewrite or delete the
- original file until you tell it. So, even if a crash occurs all you
- should lose are the in memory changes, not the original file.
-
- All this talk of system crashes is not to be taken that Elvis is
- buggy. Only, that since it is an editor it is prone to being used by
- developers who do occasionly crash their machine while debugging
- programs.
-
- Sincerely,
- Mike Rieser
-
- PS I hope you enjoy using Elvis, and if any bugs are found peculiar to
- the AmigaDOS port, please notify me via e-mail.
-
- riesermc@mentor.cc.purdue.edu
- or
- 2410 Happy Hollow Rd, Apt D-10
- West Lafayette, IN 47906-1722
-